package com.fwj.portal.model.business.product;

import com.alibaba.fastjson.annotation.JSONField;
import com.fwj.common.model.AttachInfoVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.Size;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @Author: fwj
 * @Data: 2022/5/5 13:59
 * @Version 1.0
 * @Description:
 */

@Getter
@Setter
public class BusinessProductInfoVo implements Serializable {

    /**
     * 产品编号
     */
    @ApiModelProperty("产品编号")
    private Long productNumber;
    /**
     * 产品名
     */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("产品名")
    private String productName;
    /**
     * 产品类型
     */
    @Size(max= 50,message="编码长度不能超过50")
    @ApiModelProperty("产品类型")
    private String productType;
    /**
     * 外部链接
     */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("外部链接")
    private String link;
    /**
     * 产品描述
     */
    @Size(max= 500,message="编码长度不能超过500")
    @ApiModelProperty("产品描述")
    private String description;
    /**
     * 产品备注
     */
    @Size(max= 500,message="编码长度不能超过500")
    @ApiModelProperty("产品备注")
    private String remark;
    /**
     * 封面
     */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("封面")
    private String cover;
    /**
     * 附件列表
     */
    @ApiModelProperty("附件列表")
    @JSONField(deserialize = false)
    private List<AttachInfoVo> attachList;
    /**
     * 预售时间
     */
    @ApiModelProperty("预售时间")
    private LocalDateTime preSaleTime;
    /**
     * 预售价格
     */
    @ApiModelProperty("预售价格")
    private BigDecimal preSalePrice;
    /**
     * 发布时间
     */
    @ApiModelProperty("发布时间")
    private LocalDateTime releaseTime;

    private static final long serialVersionUID = 1L;
}
